iT邦幫忙

0

從0開始的python之路-19

  • 分享至 

  • xImage
  •  

函數:
除了物件本身可以呼叫的函數(方法),我們也可以自訂函數,而好處就在於可以讓特定功能重複被使用,每次要使用時,只要呼叫函數就行,此外要注意的是,必須先定義函數才能呼叫,所以函數定義最好寫在程式碼前部分
函數的可以分為四部份:
留言

回傳值:呼叫函數完後要回傳的變數或值,可以用逗號來回傳多個,也可以不回傳值,但會變成自動回傳None物件
函數定義:函數的內容,且要縮排,函數內部新宣告的變數都是區域變數
參數:呼叫函式時,要使用的變數,也可以不傳入任何參數,有順序性,屬於區域變數,傳入時,會依 照順序,否則必須打上參數名稱
函數名稱:用來呼叫函數
當傳入參數太多時,為避免要命名很多參數名稱,可以使用將眾多變數放在同一個tuple或使用**將其放在同一個dict,使用方法即是在參數前面打上或**

return的功用:
return除了可以回傳值,還有跳離函數的功用,代表只要在函數中執行return,函數就會直接回到呼叫的地方,而不管函數是否執行完,所以只要函數已經執行到我們想要的部分完就能使用return了,就如同迴圈中的break,此外也可以不使用任何return,如同迴圈沒有break,這樣只要函數全部執行完,就會回到呼叫的地方
ex:
def 函數名稱(參數名稱,參數名稱...):
函數內容
...
return 要回傳的物件1,要回傳的物件2..

參數vs引數

參數是在函數括號內部的區域變數,且當函數結束就會消失,且不能再函數外使用的變數。
引數則是呼叫函數時,給函數當作內部參數要複製值的對象
所以當參數值改變不會影響引數的值,但如果參數的型態為容器,則會影響同為容器型態的引數

pass by reference傳址(傳參考) vs pass by value傳值
在參數引數之間的關係可以分為這兩種
傳址:把引數的記憶體位置傳給參數,參數改變會影響引數,當參數是容器才會使用傳址
傳值:把引數的值複製給參數,而使用不同記憶體空間,參數一般都是傳值


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言